<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="button" value="ajax" onclick="sendAjax()">
    <script>
       /*  响应数据:是以HTTP协议规范的响应报文信息呈现
        响应头:包含服务器向浏览器回传的数据的相关描述(响应时间、响应数据类型、响应状态……)
        响应体:服务器向浏览器发送的额外数据,数据用于完成浏览显示结果的呈现(html、css、js、数据、图片、视频……)
        不是所有响应都有响应体:HTTP协议规范中 options 和 head 请求是没有响应体(options和head不用于数据加载,主要完成服务器状态检测))

        响应头包含了浏览器完成数据解析的相关规则,对于传统浏览器请求是自动处理的,不需要通过JS设置浏览器代码
        ajax请求中,所有的服务器响应的请求头数据,对JS来说都是二进制文本数据,所以如果需要使用必须通过代码自行操作(除了cookie) 
         xhr.getAllResponseHeaders()获取所有的响应头，如果没有收到任何响应，返回null
         xhr.getResponseHeader()获取指定的响应头，如果没有收到任何响应，返回null
        
        */


        function sendAjax(){
            let xhr=new XMLHttpRequest();
           
            xhr.open("get","/html");
            xhr.onload=function(){
                // let all=xhr.getAllResponseHeaders();//获取所有的响应头
                // console.log(all);
                // let str=xhr.getResponseHeader("Content-Type");//获取指定的响应头
                // console.log(str);

                //响应头cookie的数据是由浏览器自行完成
                // let co=xhr.getResponseHeader("Set-Cookie");//Refused to get unsafe header "Set-Cookie"
                // console.log(co);
            };
            xhr.send();
        }
    </script>
</body>
</html>